package pers.cj.pdos.service;

import pers.cj.pdos.entity.*;
import com.baomidou.mybatisplus.extension.service.IService;
import pers.cj.pdos.vo.CheckHouseVo;

import java.util.Date;
import java.util.List;

/**
 * <p>
 *  服务类
 * </p>
 *
 * @author chenj
 * @since 2019-11-04
 */
public interface ICheckHouseService extends IService<CheckHouse> {

    List<CheckHouseVo> listVo(String companyId,
                              Integer page,
                              Integer limit,
                              Boolean close,
                              String search,
                              String no,
                              String goodsName,
                              String remark,
                              Date makeTime1,
                              Date makeTime2,
                              String storeId,
                              String userStoreId,
                              String userId,
                              Date date1,
                              Date date2,
                              String houseId,
                              String makeUserId);

    long count(String companyId,
               Boolean close,
               String search,
               String no,
               String goodsName,
               String remark,
               Date makeTime1,
               Date makeTime2,
               String storeId,
               String userStoreId,
               String userId,
               Date date1,
               Date date2,
               String houseId,
               String makeUserId);

    CheckHouseVo getVoById(String id);

    boolean checkNo(String no, String companyId);
    boolean checkClose(CheckHouse checkHouse);

    void insert(CheckHouse checkHouse, List<CheckHouseGoods> checkHouseGoodsList, List<CheckHouseGoodsSn> checkHouseGoodsSnList, List<GoodsSn> addGoodsSnList, List<GoodsSn> delGoodsSnList, List<GoodsSnLog> goodsSnLogList);

    void close(CheckHouse checkHouse);
}
